package com.example.springbooteasycode.zjrc.project.Koal;

import java.util.Arrays;

public class PutShortExample {
    public static void putShort(byte[] dst, short src) {
        // 将 short 类型的高 8 位放到 dst[0]
        dst[0] = (byte) ((src >> 8) & 0xFF);
        // 将 short 类型的低 8 位放到 dst[1]
        dst[1] = (byte) (src & 0xFF);
    }

    public static void main(String[] args) {
        // 准备一个长度为 2 的字节数组，用于存储处理后的数据
        byte[] dst = new byte[2];
        // 输入的第二个参数，对应 C 中的 unsigned short 类型，这里用 short 演示（范围适配小值情况）
        short src = 77;
        putShort(dst, src);

        // 输出处理后 dst 数组中每个元素的值
        System.out.println("dst[0] = " + (dst[0] & 0xFF));// 在 main 方法里打印时，为了显示无符号效果，用 (dst[0] & 0xFF) 处理，结果还是 0
        System.out.println("dst[1] = " + (dst[1] & 0xFF));
        // 输出byte[]字节数组
        System.out.println("byte[]: " + Arrays.toString(dst));
    }
}